print("不懂科技就会落伍！每天进步一点点，今天量子钛又学习了Python的字符串方法，欢迎大神们指正错误！")

# [钛妹]: 钛哥，今天我们不冲浪啦，轻松一下，再学几个常用的字符串方法吧！
# [钛哥]: 好的钛妹，今天我们来个轻松特别篇，专门学习几个非常有用的 “is” 开头的字符串检查方法！
# [钛妹]: 钛哥，`isdigit()` 方法我们之前好像学过了，它是用来检查字符串是不是都是数字的？
# [钛哥]: 没错！钛妹记得真清楚！`isdigit()` 就是用来判断字符串中的所有字符是否都是数字 0-9。 
# [钛哥]: 这是一个非常常用的方法，可以用来验证用户输入，或者处理数字相关的字符串数据。 让我们再来回顾一下！
print("\n# [钛哥]:  `isdigit()`  数字检查的“老朋友”，再次强调它的重要性！")
string_example_digit_true = "12345"
string_example_digit_false_alpha = "abc123" # 包含字母
string_example_digit_false_symbol = "123-45" # 包含符号
print(f"# 字符串 '{string_example_digit_true}' 是纯数字吗? {string_example_digit_true.isdigit()}")
print(f"# 字符串 '{string_example_digit_false_alpha}' 是纯数字吗? {string_example_digit_false_alpha.isdigit()}")
print(f"# 字符串 '{string_example_digit_false_symbol}' 是纯数字吗? {string_example_digit_false_symbol.isdigit()}")
# [钛妹]:  `isdigit()`  就像数字的“身份证识别器”，只有纯数字才能通过验证！

# [钛妹]:  `isidentifier()`  方法，我们之前也学过，它是用来检查字符串是不是合法的标识符的，对吧？
# [钛哥]:  是的，钛妹！ `isidentifier()`  方法非常重要，尤其是在编写代码的时候。 
# [钛哥]:  它用来确保字符串是否可以作为一个有效的变量名、函数名等等。  回顾一下标识符的规则，并加深理解！
print("\n# [钛哥]:  `isidentifier()`  标识符检查的“守门员”，确保变量名合法！")
string_example_identifier_true = "my_variable"
string_example_identifier_false_start_digit = "1_variable" # 数字开头
string_example_identifier_false_space = "my variable" # 包含空格
string_example_identifier_false_symbol = "my-variable" # 包含符号 '-'
print(f"# 字符串 '{string_example_identifier_true}' 是标识符吗? {string_example_identifier_true.isidentifier()}")
print(f"# 字符串 '{string_example_identifier_false_start_digit}' 是标识符吗? {string_example_identifier_false_start_digit.isidentifier()}")
print(f"# 字符串 '{string_example_identifier_false_space}' 是标识符吗? {string_example_identifier_false_space.isidentifier()}")
print(f"# 字符串 '{string_example_identifier_false_symbol}' 是标识符吗? {string_example_identifier_false_symbol.isidentifier()}")
# [钛妹]:  `isidentifier()`  帮助我们写出规范的代码，避免变量名出错！
# [钛妹]:  `islower()`  方法是检查字符串是不是都是小写字母的。  这个方法感觉也很实用，但平时会在哪里用到呢？
# [钛哥]:  `islower()`  方法在很多地方都有用武之地！ 比如，在用户注册时，可以要求用户名必须是小写字母；  
# [钛哥]: 在文本处理时，可能需要统一将文本转换为小写，然后再进行分析。  或者，在密码强度检测时，可以要求密码包含小写字母。 让我们来看一些实际应用的例子。
print("\n# [钛哥]:  `islower()`  小写检查的“细心侦探”，应用场景很广泛！")
username1 = "titanium_m"
username2 = "Titanium_M" # 包含大写字母
print("\n# [钛哥]:  例子 1: 用户名验证")
print(f"# 用户名 '{username1}' 是全小写吗? {username1.islower()}") # 验证通过
print(f"# 用户名 '{username2}' 是全小写吗? {username2.islower()}") # 验证不通过

# [钛哥]: 咱们再看一个密码复杂度检测的小例子，可能会刷新你的认知，原来还可以这样做！
password_weak = "password123" # 弱密码，但包含小写字母
password_strong = "P@$$wOrd123" # 强密码，包含大小写、数字、符号
print("\n# [钛哥]:  例子 3:  密码强度检测 (简化版)")
has_lowercase_weak = any(c.islower() for c in password_weak) # 检查密码中是否至少包含一个小写字母 (更严谨的做法)
has_lowercase_strong = any(c.islower() for c in password_strong) # 检查强密码
print(f"# 弱密码 '{password_weak}' 包含小写字母吗? {has_lowercase_weak}") # 包含
print(f"# 强密码 '{password_strong}' 包含小写字母吗? {has_lowercase_strong}") # 包含
print(f"# (注意:  `islower()`  本身检查的是字符串 *是否全是* 小写字母，这里用 `any()`  结合生成器表达式来检查 *是否包含* 小写字母)")
# [钛妹]:  哇！原来 `islower()`  在这么多地方可以用到！ 不只是简单检查小写，结合其他方法可以实现更复杂的功能！
# [钛哥]:  是的！ 这就是 Python 字符串方法的魅力，灵活组合，可以解决各种实际问题！
# [钛妹]:  好的钛哥，今天学到了很多，我总结一下你看一下呢
print("# - `isdigit()`:  检查是否全为数字")
print("# - `isidentifier()`:  检查是否为合法标识符")
print("# - `islower()`:  检查是否全为小写字母 (并学习了实际应用场景)")
# [钛哥]:  厉害！很到位！虽然只有三个方法，但它们都非常实用！  掌握这些 “is” 检查方法，可以帮助你编写更健壮、更智能的 Python 代码！"
# [钛妹]: 谢谢钛哥的耐心指点！朋友们你们是不是感觉又进步了一点点？点赞关注不迷路！
print("好啦，这期内容到此结束，你是不是感觉又进步了一点点？点赞关注不迷路！")